package com.unicom.shenzhen.sgip;

import com.unicom.shenzhen.sgip.exception.SgipBindException;
import com.unicom.shenzhen.sgip.exception.SgipChannelException;
import com.unicom.shenzhen.sgip.exception.SgipTimeoutException;
import com.unicom.shenzhen.sgip.exception.UnrecoverablePduException;

/**
 * Created by BR on 17/11/6.
 *
 * @author <a href="mailto:wangjiacheng@szunicom.com">Jiacheng Wang</a>
 */
public interface SgipClient {

	SgipSession bind(
		SgipSessionConfiguration configuration,
		SgipSessionHandler sessionHandler
	) throws SgipTimeoutException, SgipChannelException, SgipBindException, UnrecoverablePduException, InterruptedException;

	void destroy();
}
